home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
SGI Freeware 2002 November
/
SGI Freeware 2002 November - Disc 2.iso
/
dist
/
fw_groff.idb
/
usr
/
freeware
/
catman
/
u_man
/
cat1
/
grops.Z
/
grops
Wrap
Text File
|
2002-04-08
|
21KB
|
442 lines
GROPS(1) GROPS(1)
NNAAMMEE
grops - PostScript driver for groff
SSYYNNOOPPSSIISS
ggrrooppss [ --ggllmmvv ] [ --bb_n ] [ --cc_n ] [ --ww_n ] [ --FF_d_i_r ] [ --PP_p_r_o_
_l_o_g_u_e ] [ _f_i_l_e_s_._._. ]
It is possible to have whitespace between a command line
option and its parameter.
DDEESSCCRRIIPPTTIIOONN
ggrrooppss translates the output of GNU ttrrooffff to PostScript.
Normally ggrrooppss should be invoked by using the groff com
mand with a --TTppss option. (Actually, this is the default
for groff.) If no files are given, ggrrooppss will read the
standard input. A filename of -- will also cause ggrrooppss to
read the standard input. PostScript output is written to
the standard output. When ggrrooppss is run by ggrrooffff options
can be passed to ggrrooppss using the ggrrooffff --PP option.
OOPPTTIIOONNSS
--bb_n Workaround broken spoolers and previewers. Nor
mally ggrrooppss produces output that conforms the Docu
ment Structuring Conventions version 3.0. Unfortu
nately some spoolers and previewers can't handle
such output. The value of _n controls what ggrrooppss
does to its output acceptable to such programs. A
value of 0 will cause grops not to employ any
workarounds. Add 1 if no %%%%BBeeggiinnDDooccuummeennttSSeettuupp and
%%%%EEnnddDDooccuummeennttSSeettuupp comments should be generated;
this is needed for early versions of TranScript
that get confused by anything between the %%%%EEnnddPPrroo
lloogg comment and the first %%%%PPaaggee comment. Add 2 if
lines in included files beginning with %%!! should
be stripped out; this is needed for Sun's pageview
previewer. Add 4 if %%%%PPaaggee, %%%%TTrraaiilleerr and %%%%EEnndd
PPrroolloogg comments should be stripped out of included
files; this is needed for spoolers that don't
understand the %%%%BBeeggiinnDDooccuummeenntt and %%%%EEnnddDDooccuummeenntt
comments. Add 8 if the first line of the
PostScript output should be %%!!PPSS--AAddoobbee--22..00 rather
than %%!!PPSS--AAddoobbee--33..00; this is needed when using
Sun's Newsprint with a printer that requires page
reversal. The default value can be specified by a
bbrrookkeenn _n
command in the DESC file. Otherwise the default
value is 0.
--cc_n Print _n copies of each page.
--gg Guess the page length. This generates PostScript
code that guesses the page length. The guess will
be correct only if the imageable area is vertically
centered on the page. This option allows you to
generate documents that can be printed both on let
ter (8.511) paper and on A4 paper without change.
--ll Print the document in landscape format.
--mm Turn manual feed on for the document.
--FF_d_i_r Prepend directory _d_i_r//ddeevv_n_a_m_e to the search path
for prologue, font, and device description files;
_n_a_m_e is the name of the device, usually ppss.
--PP_p_r_o_l_o_g_u_e_-_f_i_l_e
Use the file _p_r_o_l_o_g_u_e_-_f_i_l_e (in the font path) as
the prologue instead of the default prologue file
pprroolloogguuee. This option overrides the environment
variable GROPS_PROLOGUE.
--ww_n Lines should be drawn using a thickness of _n thou
sandths of an em.
--vv Print the version number.
UUSSAAGGEE
There are styles called RR, II, BB, and BBII mounted at font
positions 1 to 4. The fonts are grouped into families AA,
BBMM, CC, HH, HHNN, NN, PP and TT having members in each of these
styles:
AARR AvantGarde-Book
AAII AvantGarde-BookOblique
AABB AvantGarde-Demi
AABBII AvantGarde-DemiOblique
BBMMRR Bookman-Light
BBMMII Bookman-LightItalic
BBMMBB Bookman-Demi
BBMMBBII Bookman-DemiItalic
CCRR Courier
CCII Courier-Oblique
CCBB Courier-Bold
CCBBII Courier-BoldOblique
HHRR Helvetica
HHII Helvetica-Oblique
HHBB Helvetica-Bold
HHBBII Helvetica-BoldOblique
HHNNRR Helvetica-Narrow
HHNNII Helvetica-Narrow-Oblique
HHNNBB Helvetica-Narrow-Bold
HHNNBBII Helvetica-Narrow-BoldOblique
NNRR NewCenturySchlbk-Roman
NNII NewCenturySchlbk-Italic
NNBB NewCenturySchlbk-Bold
NNBBII NewCenturySchlbk-BoldItalic
PPRR Palatino-Roman
PPII Palatino-Italic
PPBB Palatino-Bold
PPBBII Palatino-BoldItalic
TTRR Times-Roman
TTII Times-Italic
TTBB Times-Bold
TTBBII Times-BoldItalic
There is also the following font which is not a member of
a family:
ZZCCMMII ZapfChancery-MediumItalic
There are also some special fonts called SSSS and SS. Zapf
Dingbats is available as ZZDD and a reversed version of
ZapfDingbats (with symbols pointing in the opposite direc
tion) is available as ZZDDRR; most characters in these fonts
are unnamed and must be accessed using \\NN.
ggrrooppss understands various X commands produced using the \\XX
escape sequence; ggrrooppss will only interpret commands that
begin with a ppss:: tag.
\\XX''ppss:: eexxeecc _c_o_d_e''
This executes the arbitrary PostScript commands in
_c_o_d_e. The PostScript currentpoint will be set to
the position of the \\XX command before executing
_c_o_d_e. The origin will be at the top left corner of
the page, and y coordinates will increase down the
page. A procedure uu will be defined that converts
groff units to the coordinate system in effect.
For example,
..nnrr xx 11ii
\\XX''ppss:: eexxeecc \\nnxx uu 00 rrlliinneettoo ssttrrookkee''
will draw a horizontal line one inch long. _c_o_d_e
may make changes to the graphics state, but any
changes will persist only to the end of the page.
A dictionary containing the definitions specified
by the ddeeff and mmddeeff will be on top of the dictio
nary stack. If your code adds definitions to this
dictionary, you should allocate space for them
using \\XX''ppss mmddeeff _n''. Any definitions will persist
only until the end of the page. If you use the \\YY
escape sequence with an argument that names a
macro, _c_o_d_e can extend over multiple lines. For
example,
..nnrr xx 11ii
..ddee yy
ppss:: eexxeecc
\\nnxx uu 00 rrlliinneettoo
ssttrrookkee
....
\\YYyy
is another way to draw a horizontal line one inch
long.
\\XX''ppss:: ffiillee _n_a_m_e''
This is the same as the eexxeecc command except that
the PostScript code is read from file _n_a_m_e.
\\XX''ppss:: ddeeff _c_o_d_e''
Place a PostScript definition contained in _c_o_d_e in
the prologue. There should be at most one defini
tion per \\XX command. Long definitions can be split
over several \\XX commands; all the _c_o_d_e arguments
are simply joined together separated by newlines.
The definitions are placed in a dictionary which is
automatically pushed on the dictionary stack when
an eexxeecc command is executed. If you use the \\YY
escape sequence with an argument that names a
macro, _c_o_d_e can extend over multiple lines.
\\XX''ppss:: mmddeeff _n _c_o_d_e''
Like ddeeff, except that _c_o_d_e may contain up to _n def
initions. ggrrooppss needs to know how many definitions
_c_o_d_e contains so that it can create an appropri
ately sized PostScript dictionary to contain them.
\\XX''ppss:: iimmppoorrtt _f_i_l_e _l_l_x _l_l_y _u_r_x _u_r_y _w_i_d_t_h [ _h_e_i_g_h_t ]''
Import a PostScript graphic from _f_i_l_e. The argu
ments _l_l_x, _l_l_y, _u_r_x, and _u_r_y give the bounding box
of the graphic in the default PostScript coordinate
system; they should all be integers; _l_l_x and _l_l_y
are the x and y coordinates of the lower left cor
ner of the graphic; _u_r_x and _u_r_y are the x and y
coordinates of the upper right corner of the
graphic; _w_i_d_t_h and _h_e_i_g_h_t are integers that give
the desired width and height in groff units of the
graphic. The graphic will be scaled so that it has
this width and height and translated so that the
lower left corner of the graphic is located at the
position associated with \\XX command. If the height
argument is omitted it will be scaled uniformly in
the x and y directions so that it has the specified
width. Note that the contents of the \\XX command
are not interpreted by ttrrooffff; so vertical space for
the graphic is not automatically added, and the
_w_i_d_t_h and _h_e_i_g_h_t arguments are not allowed to have
attached scaling indicators. If the PostScript
file complies with the Adobe Document Structuring
Conventions and contains a %%%%BBoouunnddiinnggBBooxx comment,
then the bounding box can be automatically
extracted from within groff by using the ppssbbbb
request.
The --mmppss macros (which are automatically loaded
when ggrrooppss is run by the groff command) include a
PPSSPPIICC macro which allows a picture to be easily
imported. This has the format
..PPSSPPIICC [ --LL | --RR | --II _n ] _f_i_l_e [ _w_i_d_t_h [
_h_e_i_g_h_t ]]
_f_i_l_e is the name of the file containing the illus
tration; _w_i_d_t_h and _h_e_i_g_h_t give the desired width
and height of the graphic. The _w_i_d_t_h and _h_e_i_g_h_t
arguments may have scaling indicators attached; the
default scaling indicator is ii. This macro will
scale the graphic uniformly in the x and y direc
tions so that it is no more than _w_i_d_t_h wide and
_h_e_i_g_h_t high. By default, the graphic will be hori
zontally centered. The --LL and --RR cause the graphic
to be left-aligned and right-aligned respectively.
The --II option causes the graphic to be indented by
_n.
\\XX''ppss:: iinnvviiss''
\\XX''ppss:: eennddiinnvviiss''
No output will be generated for text and drawing
commands that are bracketed with these \\XX commands.
These commands are intended for use when output
from ttrrooffff will be previewed before being processed
with ggrrooppss; if the previewer is unable to display
certain characters or other constructs, then other
substitute characters or constructs can be used for
previewing by bracketing them with these \\XX com
mands.
For example, ggxxddiittvviieeww is not able to display a
proper \\((eemm character because the standard X11
fonts do not provide it; this problem can be over
come by executing the following request
..cchhaarr \\((eemm \\XX''ppss:: iinnvviiss''\\
\\ZZ''\\vv''--..2255mm''\\hh''..0055mm''\\DD''ll ..99mm 00''\\hh''..0055mm''''\\
\\XX''ppss:: eennddiinnvviiss''\\((eemm
In this case, ggxxddiittvviieeww will be unable to display
the \\((eemm character and will draw the line, whereas
ggrrooppss will print the \\((eemm character and ignore the
line.
The input to ggrrooppss must be in the format output by
ttrrooffff(1). This is described in ggrrooffff__oouutt(5). In addition
the device and font description files for the device used
must meet certain requirements. The device and font
description files supplied for ppss device meet all these
requirements. aaffmmttooddiitt(1) can be used to create font
files from AFM files. The resolution must be an integer
multiple of 72 times the ssiizzeessccaallee. The ppss device uses a
resolution of 72000 and a sizescale of 1000. The device
description file should contain a command
ppaappeerrlleennggtthh _n
which says that output should be generated which is suit
able for printing on a page whose length is _n machine
units. Each font description file must contain a command
iinntteerrnnaallnnaammee _p_s_n_a_m_e
which says that the PostScript name of the font is _p_s_n_a_m_e.
It may also contain a command
eennccooddiinngg _e_n_c___f_i_l_e
which says that the PostScript font should be reencoded
using the encoding described in _e_n_c___f_i_l_e; this file should
consist of a sequence of lines of the form:
_p_s_c_h_a_r _c_o_d_e
where _p_s_c_h_a_r is the PostScript name of the character, and
_c_o_d_e is its position in the encoding expressed as a deci
mal integer. The code for each character given in the
font file must correspond to the code for the character in
encoding file, or to the code in the default encoding for
the font if the PostScript font is not to be reencoded.
This code can be used with the \\NN escape sequence in ttrrooffff
to select the character, even if the character does not
have a groff name. Every character in the font file must
exist in the PostScript font, and the widths given in the
font file must match the widths used in the PostScript
font. ggrrooppss will assume that a character with a groff
name of ssppaaccee is blank (makes no marks on the page); it
can make use of such a character to generate more effi
cient and compact PostScript output.
ggrrooppss can automatically include the downloadable fonts
necessary to print the document. Any downloadable fonts
which should, when required, be included by ggrrooppss must be
listed in the file //uussrr//ffrreeee
wwaarree//sshhaarree//ggrrooffff//11..1177..22//ffoonntt//ddeevvppss//ddoowwnnllooaadd; this should
consist of lines of the form
_f_o_n_t _f_i_l_e_n_a_m_e
where _f_o_n_t is the PostScript name of the font, and _f_i_l_e_
_n_a_m_e is the name of the file containing the font; lines
beginning with ## and blank lines are ignored; fields may
be separated by tabs or spaces; _f_i_l_e_n_a_m_e will be searched
for using the same mechanism that is used for groff font
metric files. The ddoowwnnllooaadd file itself will also be
searched for using this mechanism.
If the file containing a downloadable font or imported
document conforms to the Adobe Document Structuring Con
ventions, then ggrrooppss will interpret any comments in the
files sufficiently to ensure that its own output is con
forming. It will also supply any needed font resources
that are listed in the ddoowwnnllooaadd file as well as any needed
file resources. It is also able to handle inter-resource
dependencies. For example, suppose that you have a down
loadable font called Garamond, and also a downloadable
font called Garamond-Outline which depends on Garamond
(typically it would be defined to copy Garamond's font
dictionary, and change the PaintType), then it is neces
sary for Garamond to be appear before Garamond-Outline in
the PostScript document. ggrrooppss will handle this automati
cally provided that the downloadable font file for Gara
mond-Outline indicates its dependence on Garamond by means
of the Document Structuring Conventions, for example by
beginning with the following lines
%%!!PPSS--AAddoobbee--33..00 RReessoouurrccee--FFoonntt
%%%%DDooccuummeennttNNeeeeddeeddRReessoouurrcceess:: ffoonntt GGaarraammoonndd
%%%%EEnnddCCoommmmeennttss
%%%%IInncclluuddeeRReessoouurrccee:: ffoonntt GGaarraammoonndd
In this case both Garamond and Garamond-Outline would need
to be listed in the ddoowwnnllooaadd file. A downloadable font
should not include its own name in a %%%%DDooccuummeennttSSuupp
pplliieeddRReessoouurrcceess comment.
ggrrooppss will not interpret %%%%DDooccuummeennttFFoonnttss comments. The
%%%%DDooccuummeennttNNeeeeddeeddRReessoouurrcceess, %%%%DDooccuummeennttSSuupppplliieeddRReessoouurrcceess,
%%%%IInncclluuddeeRReessoouurrccee, %%%%BBeeggiinnRReessoouurrccee and %%%%EEnnddRReessoouurrccee com
ments (or possibly the old %%%%DDooccuummeennttNNeeeeddeeddFFoonnttss,
%%%%DDooccuummeennttSSuupppplliieeddFFoonnttss, %%%%IInncclluuddeeFFoonntt, %%%%BBeeggiinnFFoonntt and
%%%%EEnnddFFoonntt comments) should be used.
EENNVVIIRROONNMMEENNTT
GGRROOPPSS__PPRROOLLOOGGUUEE
If this is set to _f_o_o, then ggrrooppss will use the file
_f_o_o (in the font path) instead of the default pro
logue file pprroolloogguuee. The option --PP overrides this
environment variable.
FFIILLEESS
//uussrr//ffrreeeewwaarree//sshhaarree//ggrrooffff//11..1177..22//ffoonntt//ddeevvppss//DDEESSCC
Device description file.
//uussrr//ffrreeeewwaarree//sshhaarree//ggrrooffff//11..1177..22//ffoonntt//ddeevvppss//_F
Font description file for font _F.
//uussrr//ffrreeeewwaarree//sshhaarree//ggrrooffff//11..1177..22//ffoonntt//ddeevvppss//ddoowwnnllooaadd
List of downloadable fonts.
//uussrr//ffrreeeewwaarree//sshhaarree//ggrrooffff//11..1177..22//ffoonntt//ddeevvppss//tteexxtt..eenncc
Encoding used for text fonts.
//uussrr//ffrreeeewwaarree//sshhaarree//ggrrooffff//11..1177..22//ttmmaacc//ppss..ttmmaacc
Macros for use with ggrrooppss; automatically loaded by
ttrrooffffrrcc
//uussrr//ffrreeeewwaarree//sshhaarree//ggrrooffff//11..1177..22//ttmmaacc//ppssppiicc..ttmmaacc
Definition of PPSSPPIICC macro, automatically loaded by
ppss..ttmmaacc.
//uussrr//ffrreeeewwaarree//sshhaarree//ggrrooffff//11..1177..22//ttmmaacc//ppssoolldd..ttmmaacc
Macros to disable use of characters not present in
older PostScript printers (e.g. `eth' or `thorn').
//ttmmpp//ggrrooppss_X_X_X_X_X_X
Temporary file.
SSEEEE AALLSSOO
aaffmmttooddiitt(1), ggrrooffff(1), ttrrooffff(1), ppssbbbb(1), ggrrooffff__oouutt(5),
ggrrooffff__ffoonntt(5), ggrrooffff__cchhaarr(7)
Groff Version 1.17.2 27 June 2001 GROPS(1)